package agg

// 加载指定盘符

import (
	"fmt"
	"strings"
)
/*
 * 加载盘符  DevLoad(d, v string)
 * d dev 盘符驱动名
 * v vol 盘符名称
 * t new path ; v 处理一下第一个分隔符 /vol = vol
*/
func DevLoad(d, v string) {
	//fmt.Printf("加载: %s %s %s\n", d, Complete(d), v)
	t := strings.Replace(v[1:], " ", "_", -1)
	if _, err := Getshell("sudo", "umount", v); err  { return }
	if _, err := Getshell("sudo", "mkdir", "-p", t); err  { return }
	if _, err := Getshell("sudo", "mount", "-t", "ntfs", "-o", "rw,auto,nobrowse", d, t); err  {
		fmt.Println("磁盘需要在Windows上经过检查、修复才能挂载为可写!")
		if p, _ := PathExists(t); p {
			Getshell("sudo", "rm", "-r", t)
		}
	}else{
		var str string
		fmt.Println("挂载成功, 路径: ", t)
		fmt.Printf("是否现在打开该盘(y/n ?):")
		fmt.Scanf("%s", &str)
		if str == "y" {
			Getshell("open", t)
		}
	}
}